package com.ruoyi.file.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 文件管理对象 tbl_file
 *
 * @author rww
 * @date 2023-09-05
 */
public class TblFile extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long id;

    /** PID */
    @Excel(name = "PID")
    private Long pid;

    /** 文件原始名称 */
    @Excel(name = "文件原始名称")
    private String originalFilename;

    /** 文件名称 */
    @Excel(name = "文件名称")
    private String fileName;
    private String fileNameNoExt;//file_name_no_ext
    private String groupId;//shp 文件之类的，一组为一个

    /** 文件大小 */
    @Excel(name = "文件大小")
    private Long fileSize;

    /** 访问路径 */
    private String filePath;//目录结构

    /** 文件类型，扩展类型 */
    @Excel(name = "文件类型，扩展类型")
    private String contentType;
    private Boolean publishable;//是否可以发布
    private Boolean published;//是否已发布
    private Long layerId;//layer_id


    /** 文件类型  1：文件夹   2：文件 */
    @Excel(name = "文件类型  1：文件夹   2：文件")
    private String fileType;
    public static final String type_folder = "1";
    public static final String type_file = "2";

    /** 状态（0不启用，1启用） */
    @Excel(name = "状态", readConverterExp = "0=不启用，1启用")
    private Integer status;

    /** 对象储存bucket */
    @Excel(name = "对象储存bucket")
    private String bucket;

    /** 对象储存名称 */
    @Excel(name = "对象储存名称")
    private String objectName;

    /** 文件标识md5 */
    @Excel(name = "文件标识md5")
    private String identifier;

    /** 分组id */
    @Excel(name = "分组id")
    private String sourceGroupId;

    /** 创建人id */
    @Excel(name = "创建人id")
    private Long userId;

    /** 是否转换  0：不转化   1：转化 */
    private Integer converted;
    private String convertedType;
    private String convertedName;
    private String convertedBucket;
    private String convertedObjectName;
    private Long convertStartTime;
    private Long convertEndTime;
    private String fileInfo;//文件解析的内容

    private String fromType;//from_type 数据来源  raster
    public static final String fromType_raster = "raster";
    //栅格数据
    private Long rasterId;//raster_id
    private String dataId;//data_id
    private String sourceType;//source_type
    private String acquisitionDate;//acquisition_date

    private String taskId;

    /////////////////////////////////////


    public String getAcquisitionDate() {
        return acquisitionDate;
    }

    public void setAcquisitionDate(String acquisitionDate) {
        this.acquisitionDate = acquisitionDate;
    }

    public String getFromType() {
        return fromType;
    }

    public void setFromType(String fromType) {
        this.fromType = fromType;
    }

    public Long getRasterId() {
        return rasterId;
    }

    public void setRasterId(Long rasterId) {
        this.rasterId = rasterId;
    }

    public String getDataId() {
        return dataId;
    }

    public void setDataId(String dataId) {
        this.dataId = dataId;
    }

    public String getSourceType() {
        return sourceType;
    }

    public void setSourceType(String sourceType) {
        this.sourceType = sourceType;
    }

    public String getFileInfo() {
        return fileInfo;
    }

    public void setFileInfo(String fileInfo) {
        this.fileInfo = fileInfo;
    }

    public Integer getConverted() {
        return converted;
    }

    public void setConverted(Integer converted) {
        this.converted = converted;
    }

    public String getConvertedType() {
        return convertedType;
    }

    public void setConvertedType(String convertedType) {
        this.convertedType = convertedType;
    }

    public String getConvertedName() {
        return convertedName;
    }

    public void setConvertedName(String convertedName) {
        this.convertedName = convertedName;
    }

    public String getConvertedBucket() {
        return convertedBucket;
    }

    public void setConvertedBucket(String convertedBucket) {
        this.convertedBucket = convertedBucket;
    }

    public String getConvertedObjectName() {
        return convertedObjectName;
    }

    public void setConvertedObjectName(String convertedObjectName) {
        this.convertedObjectName = convertedObjectName;
    }

    public Long getConvertStartTime() {
        return convertStartTime;
    }

    public void setConvertStartTime(Long convertStartTime) {
        this.convertStartTime = convertStartTime;
    }

    public Long getConvertEndTime() {
        return convertEndTime;
    }

    public void setConvertEndTime(Long convertEndTime) {
        this.convertEndTime = convertEndTime;
    }

    public String getGroupId() {
        return groupId;
    }

    public void setGroupId(String groupId) {
        this.groupId = groupId;
    }

    public String getFileNameNoExt() {
        return fileNameNoExt;
    }

    public void setFileNameNoExt(String fileNameNoExt) {
        this.fileNameNoExt = fileNameNoExt;
    }

    public Boolean getPublished() {
        return published;
    }

    public void setPublished(Boolean published) {
        this.published = published;
    }

    public Long getLayerId() {
        return layerId;
    }

    public void setLayerId(Long layerId) {
        this.layerId = layerId;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setPid(Long pid)
    {
        this.pid = pid;
    }

    public Long getPid()
    {
        return pid;
    }
    public void setOriginalFilename(String originalFilename)
    {
        this.originalFilename = originalFilename;
    }

    public String getOriginalFilename()
    {
        return originalFilename;
    }
    public void setFileName(String fileName)
    {
        this.fileName = fileName;
    }

    public String getFileName()
    {
        return fileName;
    }
    public void setFileSize(Long fileSize)
    {
        this.fileSize = fileSize;
    }

    public Long getFileSize()
    {
        return fileSize;
    }
    public void setFilePath(String filePath)
    {
        this.filePath = filePath;
    }

    public String getFilePath()
    {
        return filePath;
    }
    public void setContentType(String contentType)
    {
        this.contentType = contentType;
    }

    public Boolean getPublishable() {
        return publishable;
    }

    public void setPublishable(Boolean publishable) {
        this.publishable = publishable;
    }

    public String getContentType()
    {
        return contentType;
    }
    public void setFileType(String fileType)
    {
        this.fileType = fileType;
    }

    public String getFileType()
    {
        return fileType;
    }
    public void setStatus(Integer status)
    {
        this.status = status;
    }

    public Integer getStatus()
    {
        return status;
    }
    public void setBucket(String bucket)
    {
        this.bucket = bucket;
    }

    public String getBucket()
    {
        return bucket;
    }
    public void setObjectName(String objectName)
    {
        this.objectName = objectName;
    }

    public String getObjectName()
    {
        return objectName;
    }
    public void setIdentifier(String identifier)
    {
        this.identifier = identifier;
    }

    public String getIdentifier()
    {
        return identifier;
    }
    public void setSourceGroupId(String sourceGroupId)
    {
        this.sourceGroupId = sourceGroupId;
    }

    public String getSourceGroupId()
    {
        return sourceGroupId;
    }
    public void setUserId(Long userId)
    {
        this.userId = userId;
    }

    public Long getUserId()
    {
        return userId;
    }

    public String getTaskId() {
        return taskId;
    }

    public void setTaskId(String taskId) {
        this.taskId = taskId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("pid", getPid())
            .append("originalFilename", getOriginalFilename())
            .append("fileName", getFileName())
            .append("fileSize", getFileSize())
            .append("filePath", getFilePath())
            .append("contentType", getContentType())
            .append("fileType", getFileType())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("bucket", getBucket())
            .append("objectName", getObjectName())
            .append("identifier", getIdentifier())
            .append("sourceGroupId", getSourceGroupId())
            .append("userId", getUserId())
            .append("taskId", getTaskId())
            .toString();
    }
}
